package com.tianqingwl.gsystem.content.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.tianqingwl.gsystem.common.vo.CommonResultVo;
import com.tianqingwl.gsystem.content.param.ContentInfoQueryParam;
import com.tianqingwl.gsystem.content.pojo.ContentInfo;

import java.util.List;

public interface ContentInfoService {
    boolean haveContentByTypeId(Long contentTypeId);

    void list(Page<ContentInfo> contentPage, ContentInfoQueryParam queryParam);

    void save(ContentInfo contentInfo);

    ContentInfo getContentInfoById(Long contentId);

    void deleteById(Long contentId);

    /**
     * 批量删除
     * @param idList
     */
    void deleteByIdList(List<Long> idList);

    List<ContentInfo> listHotContent();

    /**
     * 根据文章类别推荐文章
     * @param contentType
     * @return
     */
    List<ContentInfo> listRecommendContent(Long contentType);

    /**
     * 上一篇、下一篇文章
     * @param contentId
     * @return
     */
    List<ContentInfo> nearContentList(Long contentId);

    void updateViewCount(Long contentId);

    void updateUserShowName(Long userId, String showName);

    CommonResultVo baiduSubmit(Long contentId, Long[] contentIds);

    void search(Page<ContentInfo> searchPage, String searchContent);
}
